package com.cloudkinto.service.order.vo.shopify;

import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * Author Administrator
 *
 * @Des
 * @Version
 * @Date 2021/9/23
 */
@Data
public class OrderShopifyEntity {

    /**
     * orders : [{"cancelled_at":null,"fulfillment_status":null,"total_price_usd":"7.73","current_total_discounts_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"line_items":[{"origin_location":{"zip":"215000","country_code":"CN","address2":"","city":"Suzhou","address1":"cloudklongo","name":"cloudklongo","id":3027933004007,"province_code":"JS"},"variant_title":"BAA","fulfillment_status":null,"total_discount":"0.00","gift_card":false,"requires_shipping":true,"total_discount_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"title":"座椅子","product_exists":true,"variant_id":39460030251239,"tax_lines":[{"channel_liable":false,"rate":0.17,"price":"0.00","price_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"title":"VAT"}],"price":"50.00","vendor":"cloudklongo","product_id":6634216423655,"id":10059565531367,"grams":18000,"sku":"PP0001AAA","fulfillable_quantity":1,"quantity":1,"fulfillment_service":"manual","taxable":false,"variant_inventory_management":"shopify","discount_allocations":[],"admin_graphql_api_id":"gid://shopify/LineItem/10059565531367","name":"座椅子 - BAA","price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"properties":[],"duties":[]}],"original_total_duties_set":null,"presentment_currency":"CNY","total_discounts_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"location_id":60982755559,"source_url":null,"landing_site":null,"source_identifier":null,"reference":null,"number":1,"checkout_id":29166441464039,"checkout_token":"a44ce30c5c4a06e3df66c4f820a9c4f4","tax_lines":[],"current_total_discounts":"0.00","customer_locale":null,"id":3864767856871,"app_id":1354745,"subtotal_price":"50.00","closed_at":null,"order_status_url":"https://cloudklongo.myshopify.com/54934896871/orders/46d049453a927cf8ead647fb207b3376/authenticate?key=deccecbb547fb2a8af78d746f61054b3","current_total_price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"device_id":null,"test":false,"total_shipping_price_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"subtotal_price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"payment_gateway_names":["manual"],"total_tax":"0.00","tags":"","current_subtotal_price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"processing_method":"manual","current_total_tax":"0.00","shipping_lines":[],"phone":"+8618550391025","user_id":71400423655,"note_attributes":[],"name":"#1001","cart_token":null,"total_tax_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"landing_site_ref":null,"discount_codes":[],"estimated_taxes":false,"note":null,"current_subtotal_price":"50.00","current_total_tax_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"total_outstanding":"0.00","order_number":1001,"discount_applications":[],"created_at":"2021-09-23T09:55:48+08:00","total_line_items_price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"taxes_included":false,"buyer_accepts_marketing":false,"confirmed":true,"total_weight":18000,"contact_email":"4ddd44f9c1b9abdf53dd32be8ca8bb7fs1@pc.fw.rakuten.ne.jp","refunds":[],"total_discounts":"0.00","fulfillments":[],"client_details":{"session_hash":null,"accept_language":null,"browser_width":null,"browser_height":null,"browser_ip":null,"user_agent":null},"referring_site":null,"updated_at":"2021-09-23T09:59:08+08:00","processed_at":"2021-09-23T09:55:48+08:00","currency":"CNY","shipping_address":{"zip":"494-0008","country":"China","city":"一宮市","address2":"","address1":"東五城字東備前２１−１","latitude":null,"last_name":"小松","province_code":"SH","country_code":"CN","province":"Shanghai","phone":"+819074283822","name":"小松雄祐","company":"","first_name":"雄祐","longitude":null},"browser_ip":null,"email":"4ddd44f9c1b9abdf53dd32be8ca8bb7fs1@pc.fw.rakuten.ne.jp","source_name":"shopify_draft_order","total_price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"current_total_duties_set":null,"total_price":"50.00","total_line_items_price":"50.00","total_tip_received":"0.00","token":"46d049453a927cf8ead647fb207b3376","cancel_reason":null,"current_total_price":"50.00","admin_graphql_api_id":"gid://shopify/Order/3864767856871","financial_status":"paid","gateway":"manual"}]
     */

    /**
     * cancelled_at : null
     * fulfillment_status : null
     * total_price_usd : 7.73
     * current_total_discounts_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
     * line_items : [{"origin_location":{"zip":"215000","country_code":"CN","address2":"","city":"Suzhou","address1":"cloudklongo","name":"cloudklongo","id":3027933004007,"province_code":"JS"},"variant_title":"BAA","fulfillment_status":null,"total_discount":"0.00","gift_card":false,"requires_shipping":true,"total_discount_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"title":"座椅子","product_exists":true,"variant_id":39460030251239,"tax_lines":[{"channel_liable":false,"rate":0.17,"price":"0.00","price_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"title":"VAT"}],"price":"50.00","vendor":"cloudklongo","product_id":6634216423655,"id":10059565531367,"grams":18000,"sku":"PP0001AAA","fulfillable_quantity":1,"quantity":1,"fulfillment_service":"manual","taxable":false,"variant_inventory_management":"shopify","discount_allocations":[],"admin_graphql_api_id":"gid://shopify/LineItem/10059565531367","name":"座椅子 - BAA","price_set":{"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}},"properties":[],"duties":[]}]
     * original_total_duties_set : null
     * presentment_currency : CNY
     * total_discounts_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
     * location_id : 60982755559
     * source_url : null
     * landing_site : null
     * source_identifier : null
     * reference : null
     * number : 1
     * checkout_id : 29166441464039
     * checkout_token : a44ce30c5c4a06e3df66c4f820a9c4f4
     * tax_lines : []
     * current_total_discounts : 0.00
     * customer_locale : null
     * id : 3864767856871
     * app_id : 1354745
     * subtotal_price : 50.00
     * closed_at : null
     * order_status_url : https://cloudklongo.myshopify.com/54934896871/orders/46d049453a927cf8ead647fb207b3376/authenticate?key=deccecbb547fb2a8af78d746f61054b3
     * current_total_price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
     * device_id : null
     * test : false
     * total_shipping_price_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
     * subtotal_price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
     * payment_gateway_names : ["manual"]
     * total_tax : 0.00
     * tags :
     * current_subtotal_price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
     * processing_method : manual
     * current_total_tax : 0.00
     * shipping_lines : []
     * phone : +8618550391025
     * user_id : 71400423655
     * note_attributes : []
     * name : #1001
     * cart_token : null
     * total_tax_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
     * landing_site_ref : null
     * discount_codes : []
     * estimated_taxes : false
     * note : null
     * current_subtotal_price : 50.00
     * current_total_tax_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
     * total_outstanding : 0.00
     * order_number : 1001
     * discount_applications : []
     * created_at : 2021-09-23T09:55:48+08:00
     * total_line_items_price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
     * taxes_included : false
     * buyer_accepts_marketing : false
     * confirmed : true
     * total_weight : 18000
     * contact_email : 4ddd44f9c1b9abdf53dd32be8ca8bb7fs1@pc.fw.rakuten.ne.jp
     * refunds : []
     * total_discounts : 0.00
     * fulfillments : []
     * client_details : {"session_hash":null,"accept_language":null,"browser_width":null,"browser_height":null,"browser_ip":null,"user_agent":null}
     * referring_site : null
     * updated_at : 2021-09-23T09:59:08+08:00
     * processed_at : 2021-09-23T09:55:48+08:00
     * currency : CNY
     * shipping_address : {"zip":"494-0008","country":"China","city":"一宮市","address2":"","address1":"東五城字東備前２１−１","latitude":null,"last_name":"小松","province_code":"SH","country_code":"CN","province":"Shanghai","phone":"+819074283822","name":"小松雄祐","company":"","first_name":"雄祐","longitude":null}
     * browser_ip : null
     * email : 4ddd44f9c1b9abdf53dd32be8ca8bb7fs1@pc.fw.rakuten.ne.jp
     * source_name : shopify_draft_order
     * total_price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
     * current_total_duties_set : null
     * total_price : 50.00
     * total_line_items_price : 50.00
     * total_tip_received : 0.00
     * token : 46d049453a927cf8ead647fb207b3376
     * cancel_reason : null
     * current_total_price : 50.00
     * admin_graphql_api_id : gid://shopify/Order/3864767856871
     * financial_status : paid
     * gateway : manual
     */
    private String cancelled_at;
    private String fulfillment_status;
    private double total_price_usd;
    //    private PriceSetEntity current_total_discounts_set;
    private List<Line_itemsEntity> line_items;
    private String original_total_duties_set;
    private String presentment_currency;
    //    private PriceSetEntity total_discounts_set;
    private long location_id;
    private String source_url;
    private String landing_site;
    private String source_identifier;
    private String reference;
    private int number;
    private long checkout_id;
    private String checkout_token;
    private List<?> tax_lines;
    private String current_total_discounts;
    private String customer_locale;
    private long id;
    private long app_id;
    private double subtotal_price;
    private String closed_at;
    private String order_status_url;
    //    private PriceSetEntity current_total_price_set;
    private String device_id;
    private boolean test;
    //    private PriceSetEntity total_shipping_price_set;
//    private PriceSetEntity subtotal_price_set;
    private List<String> payment_gateway_names;
    private double total_tax;
    private String tags;
    //    private PriceSetEntity current_subtotal_price_set;
    private String processing_method;
    private double current_total_tax;
    private List<OrderShopifyShippingEntity> shipping_lines;
    private String phone;
    private long user_id;
    private List<?> note_attributes;
    private String name;
    private String cart_token;
    //    private PriceSetEntity total_tax_set;
    private String landing_site_ref;
    private List<?> discount_codes;
    private boolean estimated_taxes;
    private String note;
    private double current_subtotal_price;
    //    private PriceSetEntity current_total_tax_set;
    private String total_outstanding;
    private long order_number;
    private List<?> discount_applications;
    private Date created_at;
    //    private PriceSetEntity total_line_items_price_set;
    private boolean taxes_included;
    private boolean buyer_accepts_marketing;
    private boolean confirmed;
    private double total_weight;
    private String contact_email;
    private List<?> refunds;
    private double total_discounts;
    private List<?> fulfillments;
//    private Client_detailsEntity client_details;
    private String referring_site;
    private Date updated_at;
    private Date processed_at;
    private String currency;
    private ShippingAddressEntity shipping_address;
    private String browser_ip;
    private String email;
    private String source_name;
    //    private PriceSetEntity total_price_set;
    private String current_total_duties_set;
    private double total_price;
    private double total_line_items_price;
    private String total_tip_received;
    private String token;
    private String cancel_reason;
    private double current_total_price;
    private String admin_graphql_api_id;
    private String financial_status;
    private String gateway;

    @Data
    public class Line_itemsEntity {
        /**
         * origin_location : {"zip":"215000","country_code":"CN","address2":"","city":"Suzhou","address1":"cloudklongo","name":"cloudklongo","id":3027933004007,"province_code":"JS"}
         * variant_title : BAA
         * fulfillment_status : null
         * total_discount : 0.00
         * gift_card : false
         * requires_shipping : true
         * total_discount_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
         * title : 座椅子
         * product_exists : true
         * variant_id : 39460030251239
         * tax_lines : [{"channel_liable":false,"rate":0.17,"price":"0.00","price_set":{"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}},"title":"VAT"}]
         * price : 50.00
         * vendor : cloudkinto
         * product_id : 6634216423655
         * id : 10059565531367
         * grams : 18000
         * sku : PP0001AAA
         * fulfillable_quantity : 1
         * quantity : 1
         * fulfillment_service : manual
         * taxable : false
         * variant_inventory_management : shopify
         * discount_allocations : []
         * admin_graphql_api_id : gid://shopify/LineItem/10059565531367
         * name : 座椅子 - BAA
         * price_set : {"shop_money":{"amount":"50.00","currency_code":"CNY"},"presentment_money":{"amount":"50.00","currency_code":"CNY"}}
         * properties : []
         * duties : []
         */
        private Origin_locationEntity origin_location;
        private String variant_title;
        private String fulfillment_status;
        private String total_discount;
        private boolean gift_card;
        private boolean requires_shipping;
        //        private PriceSetEntity total_discount_set;
        private String title;
        private boolean product_exists;
        private long variant_id;
        private List<TaxLinesEntity> tax_lines;
        private double price;
        private String vendor;
        private long product_id;
        private long id;
        private long grams;
        private String sku;
        private int fulfillable_quantity;
        private int quantity;
        private String fulfillment_service;
        private boolean taxable;
        private String variant_inventory_management;
        private List<?> discount_allocations;
        private String admin_graphql_api_id;
        private String name;
//        private PriceSetEntity price_set;
        private List<?> properties;
        private List<?> duties;

        public class Origin_locationEntity {
            /**
             * zip : 215000
             * country_code : CN
             * address2 :
             * city : Suzhou
             * address1 : cloudklongo
             * name : cloudklongo
             * id : 3027933004007
             * province_code : JS
             */
            private String zip;
            private String country_code;
            private String address2;
            private String city;
            private String address1;
            private String name;
            private long id;
            private String province_code;

            public void setZip(String zip) {
                this.zip = zip;
            }

            public void setCountry_code(String country_code) {
                this.country_code = country_code;
            }

            public void setAddress2(String address2) {
                this.address2 = address2;
            }

            public void setCity(String city) {
                this.city = city;
            }

            public void setAddress1(String address1) {
                this.address1 = address1;
            }

            public void setName(String name) {
                this.name = name;
            }

            public void setId(long id) {
                this.id = id;
            }

            public void setProvince_code(String province_code) {
                this.province_code = province_code;
            }

            public String getZip() {
                return zip;
            }

            public String getCountry_code() {
                return country_code;
            }

            public String getAddress2() {
                return address2;
            }

            public String getCity() {
                return city;
            }

            public String getAddress1() {
                return address1;
            }

            public String getName() {
                return name;
            }

            public long getId() {
                return id;
            }

            public String getProvince_code() {
                return province_code;
            }
        }

        public class TaxLinesEntity {
            /**
             * channel_liable : false
             * rate : 0.17
             * price : 0.00
             * price_set : {"shop_money":{"amount":"0.00","currency_code":"CNY"},"presentment_money":{"amount":"0.00","currency_code":"CNY"}}
             * title : VAT
             */
            private boolean channel_liable;
            private double rate;
            private String price;
            private PriceSetEntity price_set;
            private String title;

            public void setChannel_liable(boolean channel_liable) {
                this.channel_liable = channel_liable;
            }

            public void setRate(double rate) {
                this.rate = rate;
            }

            public void setPrice(String price) {
                this.price = price;
            }

            public void setPrice_set(PriceSetEntity price_set) {
                this.price_set = price_set;
            }

            public void setTitle(String title) {
                this.title = title;
            }

            public boolean isChannel_liable() {
                return channel_liable;
            }

            public double getRate() {
                return rate;
            }

            public String getPrice() {
                return price;
            }

            public PriceSetEntity getPrice_set() {
                return price_set;
            }

            public String getTitle() {
                return title;
            }
        }

    }

}
